package com.xt.favorites.admin.service.impl;

import com.xt.common.utils.DateUtils;
import com.xt.favorites.admin.entity.Config;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xt.common.utils.PageUtils;
import com.xt.common.utils.Query;

import com.xt.favorites.admin.dao.ConfigDao;
import com.xt.favorites.admin.entity.ConfigEntity;
import com.xt.favorites.admin.service.ConfigService;


@Service("configService")
public class ConfigServiceImpl extends ServiceImpl<ConfigDao, ConfigEntity> implements ConfigService {

    @Override
    public PageUtils queryPage(Map<String, Object> params) {
        IPage<ConfigEntity> page = this.page(
                new Query<ConfigEntity>().getPage(params),
                new QueryWrapper<ConfigEntity>()
        );

        return new PageUtils(page);
    }

    @Override
    public void saveConfig(Long userId, String favoritesId) {
        ConfigEntity configEntity = new ConfigEntity();
        Config config = new Config();
        config.setUserId(userId);
        config.setDefaultModel("simple");
        config.setDefaultFavorties(favoritesId);
        config.setDefaultCollectType("public");
        config.setCreateTime(DateUtils.getCurrentTime());
        config.setLastModifyTime(DateUtils.getCurrentTime());
        BeanUtils.copyProperties(config,configEntity);
        this.save(configEntity);

    }

}